home *** CD-ROM | disk | FTP | other *** search
/ Danny Amor's Online Library / Danny Amor's Online Library - Volume 1.iso / html / faqs / faq / osi-protocols < prev    next >
Encoding:
Text File  |  1995-07-25  |  50.8 KB  |  1,099 lines

  1. Subject: comp.protocols.iso FAQ
  2. Newsgroups: comp.protocols.iso,comp.answers,news.answers
  3. From: unrza3@cd4680fs.rrze.uni-erlangen.de (Markus Kuhn)
  4. Date: Fri, 7 Oct 1994 22:31:54 +0100
  5.  
  6. Archive-name: osi-protocols
  7. Last-modified: $Date: 94/08/01 20:17:32 $
  8. Version: $Revision: 1.11 $
  9.  
  10. Frequently Asked Questions about OSI with Answers
  11. -------------------------------------------------
  12.  
  13. This text is a monthly posting to the USENET group comp.protocols.iso.
  14. Its purpose is to give answers to some of the questions appearing most
  15. often in this group, to offer a minimal starting point in the learning
  16. curve of OSI beginners and to collect interesting information that
  17. appeared in USENET discussions.
  18.  
  19. Another FAQ (Archive-Name: standards-faq) which is posted to
  20. comp.protocols.iso and comp.std.misc contains information about the
  21. international standardization organizations (ISO, CCITT, ...), where
  22. their documents are available, what Internet recources provide
  23. information about standards etc.
  24.  
  25. This FAQ is crossposted to news.answers and won't expire there on
  26. well-managed news systems until the next version has been posted. As a
  27. consequence of being crossposted to news.answers, this text will also
  28. be automatically archived on many FAQ servers all over the world (e.g.,
  29. look with anonymous ftp at rtfm.mit.edu in /pub/usenet/news.answers).
  30. You'll also find there many other answers to frequently asked questions.
  31.  
  32. The author of this FAQ has lost much of his enthusiasm for OSI since
  33. the first version has been posted and won't spend too much time in
  34. maintaining it. If you have much more energy left for this subject and
  35. are interested in continuing with the FAQ, just contact me! I'll
  36. concentrate on this text's brother, the Standards FAQ, which has
  37. received much more interest and contributions.
  38.  
  39. I hope you enjoy it ...
  40.  
  41. Markus
  42.  
  43.  
  44. Contents
  45. --------
  46.  
  47.   What is OSI?
  48.   What is the OSI reference model?
  49.   What is ASN.1?
  50.   What OSI standards are there?
  51.   How are OSI and TCP/IP related?
  52.   Which is better: TCP/IP or OSI?
  53.   OSI criticism
  54.   Which free OSI implementations are available?
  55.   New and planned OSI standards
  56.   Books and Journals
  57.  
  58. A '+' in the first column marks a topic that has been added since this
  59. FAQ has been posted the last time and a '!' marks a change. Trivial
  60. typographic changes are not marked.
  61.  
  62.  
  63.  
  64. What is OSI?
  65. ------------
  66.                    "the first successful worldwide attempt to develop a set
  67.                     of comprehensive standards for computer communications"
  68.                                                              (Uyless Black)
  69.  
  70. OSI is an abbreviation for Open Systems Interconnection. In the early
  71. 80's, people in several standardization committees all over the world
  72. felt that the time had come to develop a set of non-proprietary
  73. standard protocols. They hope that one day these protocols will replace
  74. most of the vendor-dependent specifications and that this will make the
  75. way free for easy and flexible world-wide computer communication. It
  76. took nearly a decade before the first results were produced: a
  77. reference model and a set of layer standards from physical cable
  78. definitions up to distributed databases and information systems,
  79. together with management and security tools. The process of
  80. standardization hasn't been finished yet and probably won't be in the
  81. next decade, but we already have a powerful set of protocols for the
  82. most important applications. These specifications have been published
  83. as ISO standards and CCITT recommendations.
  84.  
  85.  
  86. What is the OSI reference model?
  87. --------------------------------
  88.  
  89. A good international standard should be flexible and extensible. In
  90. order to achieve this goal, it seems to be a good idea to separate a
  91. complex structure like a computer protocol in several modules. Each
  92. module should be of manageable size and, if different techniques are
  93. available for a certain aspect of a protocol, then the separation into
  94. modules makes it quite easy to change this part of the whole system
  95. (e.g. the cable specification or the encoding of data) without touching
  96. the rest of the specification.
  97.  
  98. The OSI Reference Model (RM) defined in ISO 7498 divides the
  99. communication process between two application programs into 7
  100. intermediate layers. Each layer provides a certain kind of service to
  101. the next higher layer. This service is provided by communicating with
  102. the peer entity in same layer of the remote host using the service
  103. provided by the next lower layer. Some of the layer entities may be
  104. implemented in physical devices, some may be part of the operating
  105. system and some may be included in application programs. Most layers
  106. provide their service by forwarding protocol data units to the next
  107. layer together with an added or removed header or by performing other
  108. functions and state changes.
  109.  
  110. The OSI Reference Model only defines the abstract notion of layers and
  111. does not specify whether the boundaries between the layers have to be
  112. visible and documented in implementations. There are other standards
  113. that define application program interfaces (APIs) between the operating
  114. system and the application and these APIs often correspond to a layer
  115. boundary in the OSI Reference Model.
  116.  
  117. The classic standard diagram that is normally used to describe the OSI
  118. RM looks like this:
  119.  
  120.  
  121.      End System                      End System
  122.  
  123.      +-------+                       +-------+
  124.      |   7   |                       |   7   |     Application Layer
  125.      +-------+                       +-------+
  126.      |   6   |                       |   6   |     Presentation Layer
  127.      +-------+                       +-------+
  128.      |   5   |      Intermediate     |   5   |     Session Layer
  129.      +-------+         System        +-------+
  130.      |   4   |                       |   4   |     Transport Layer
  131.      +-------+     +-----------+     +-------+
  132.      |   3   |     |     3     |     |   3   |     Network Layer
  133.      +-------+     +-----+-----+     +-------+
  134.      |   2   |     |  2  |  2  |     |   2   |     Data Link Layer
  135.      +-------+     +-----+-----+     +-------+
  136.      |   1   |     |  1  |  1  |     |   1   |     Physical Layer
  137.      +-------+     +-----+-----+     +-------+
  138.          |            |     |            |
  139.          +------------+     +----...-----+
  140.  
  141.  
  142. The PHYSICAL LAYER provides the service of transferring bits from one
  143. end of the physical medium to the other. This includes the
  144. specification of the medium (wire, coax cable, fiber optics, radio
  145. signals, laser signals, microwave signals, seismic waves, ... :-) as
  146. well as the connectors, the modulation techniques, environmental limits
  147. etc.
  148.  
  149. The DATA LINK LAYER uses the bit-transfer ability of the physical layer
  150. to provide a secured link between two hosts. This includes functions
  151. like error detection and correction, separating data blocks,
  152. controlling media access, etc.
  153.  
  154. In a network, not every computer has to be connected to each other
  155. directly. Hosts should be able to forward data packets according to an
  156. address field that has been attached to the packet. The NETWORK LAYER
  157. provides the service of routing and delivering a packet to any host in
  158. the network. In intermediate systems, where there's no application
  159. program involved in the communication, the packets are only processed
  160. by the lower three layers.
  161.  
  162. Each layer (especially 2 and 3) can operate in two different modes. In
  163. the CONNECTION-ORIENTED (CO) mode, the communication goes through
  164. several stages similar to a telephone call: (1) dial, (2) wait until
  165. the connection has been established, (3) communicate, (4) close the
  166. connection, (5) wait until close of the connection has been confirmed.
  167. The connection-oriented mode guarantees that no packets are lost and
  168. that all packets arrive in the same order in which they have been sent.
  169. In contrast, in the CONNECTIONLESS (CL) mode only a datagram service is
  170. provided, similar to the postal letter service. No one guarantees that
  171. the letters arrive in the same order in which they have been sent, and
  172. every intermediate system is allowed to discard a packet if there are
  173. insufficient resources available to deal with it (e.g. buffers are
  174. full). In CL-mode systems, higher layers have to deal with
  175. resequencing, retransmission of lost packets, etc. where a reliable
  176. data stream is required.
  177.  
  178. There is endless debate about whether the CONS (connection-oriented
  179. network service) or the CLNS should be provided by the network layer
  180. and now both alternatives have been defined in OSI standard protocols.
  181. As most applications want to exchange several packets in sequence, they
  182. need a CO-mode service. The TRANSPORT LAYER has been introduced in
  183. order to hide the differences between several network concepts (CO vs.
  184. CL and other things like maximum packet size and quality of service)
  185. from the connection-oriented transport service (COTS) user. In the case
  186. of a CO network, the COTS is quite simple to provide, but over a CL
  187. network, complete error correction and flow control has to be provided
  188. in the transport layer.
  189.  
  190. The main advantage of the CLNS is higher efficiency because fewer CPU 
  191. cycles for complex flow control algorithms are needed in intermediate
  192. systems (routers). If no connection-oriented transport service is
  193. needed, then the response time may be significantly shorter over a
  194. CLNS. CONS, on the other hand, makes accounting easier for network
  195. providers, as only correctly delivered packets are counted. The headers
  196. of the connection-oriented network protocol packets may be much
  197. shorter, as the full address is not required in each packet, which
  198. might be relevant on slow lines. In addition, many existing nets are
  199. CO, e.g. X.25 nets, the telephone net and ISDN.
  200.  
  201. The SESSION LAYER offers a mechanism to include synchronization points
  202. in the stream of exchanged packets and to go back to one of the
  203. previous sync points. This might be useful if large files are
  204. transferred and it is possible to recover after a breakdown without
  205. having to retransfer the whole file. The session layer only provides
  206. the means to negotiate a recovery. The recovery has to be done by the
  207. application and not by the software that implements the session layer.
  208. This is the reason why many experts consider the session layer as one
  209. of the darker corners of the OSI model, especially as this part of the
  210. standard is quite complex and difficult to understand. Perhaps it would
  211. have been a better choice to include the session layer functionality
  212. somewhere in the application layer. Don't worry if you don't understand
  213. the exact ideas behind the design of the session layer, you are not
  214. alone. There are even obscure relations with CCITT T.62, although only
  215. very few people seem to understand why compatibility with an old
  216. Teletex protocol was necessary in the session layer design ...
  217.  
  218. The PRESENTATION LAYER provides for negotiation of the form of
  219. representation (syntax) of the data that will be transferred. This
  220. makes sense if several optional ASN.1 encodings or other syntaxes 
  221. (e.g. the X Window System protocol) are possible.
  222.  
  223. Finally, the APPLICATION LAYER provides an application-specific
  224. service. This is not the application itself, but the application layer
  225. is directly used by an application program. For instance, an electronic
  226. mail user interface program might use the X.400 application layer in
  227. order to send a message to another host. Here the application layer
  228. will deal with things like address resolution, routing decisions,
  229. transferring and converting (even very huge) messages, etc. Other
  230. application layer standards offer services like accessing remote file
  231. systems, controlling video terminals and transaction systems, etc.
  232.  
  233. In addition to the 7 layers, the OSI Reference Model defines a
  234. management and a security architecture that includes all 7 layers.
  235.  
  236. The seven layer model seems to have been first mentioned in the
  237. literature in
  238.  
  239.   "A Tutorial on Protocols" by Louis Pouzin and Hubert Zimmerman in
  240.   Proceedings of the IEEE, Volume 66, Number 11 (November 1978), pages
  241.   1346-1370.
  242.  
  243.  
  244. What is ASN.1?
  245. --------------
  246.  
  247. Most protocols are defined as sets of protocol data units (PDUs) that
  248. might be exchanged between two hosts. A PDU is a sequence of bytes that
  249. one host uses to tell the other one something according to the rules of
  250. the protocol. Quite early in the OSI project, it was recognized that a
  251. formal way of defining the syntax of PDUs was needed, i.e. something 
  252. like the well-known context-free Backus-Naur grammars (BNF) are used to
  253. define the syntax of programming languages. ASN.1 (abstract syntax
  254. notation number 1) plays the same role in defining OSI protocols that
  255. BNF plays in the definition of a programming language: it gives a
  256. precise and parseable specification how PDUs are structured and which
  257. structures are allowed, but it says nothing about the meaning of a PDU.
  258. This is still defined in English language in the OSI standards.
  259.  
  260. ASN.1 specifies only the 'abstract syntax' of a PDU. This means that it
  261. only says that, for example, a PDU consists of 2 integer numbers (of
  262. arbitrary size), one optional UTC time value and one ISO 10646 string
  263. or, alternatively, one ASCII string. ASN.1 doesn't define the 'transfer
  264. syntax', the way in which the values in the abstract syntax (e.g. {2,
  265. 42, 1992-10-6 10:09:34, "Hey!"}) are encoded in the sending or
  266. receiving computers, or on the transmission path between them. Several
  267. different transfer syntaxes have been defined. The most widely used one
  268. is BER (basic encoding rules). Other transfer syntaxes are simplified
  269. BER subsets or provide a one-to-one mapping between abstract value and
  270. the bit string for cryptographic applications or are optimized with
  271. regard to CPU time or PDU length.
  272.  
  273. An example:
  274.  
  275.        NonsenseProtocol ::= CHOICE {
  276.                               testPDU [0] TestPDU,  -- Our example
  277.                               getFile [1] GetFile   -- another possible PDU
  278.                             }
  279.  
  280.        TestPDU ::= SEQUENCE {
  281.                      aNumber INTEGER,
  282.                      anotherNumber INTEGER,
  283.                      today UTCTime OPTIONAL,
  284.                      theText CHOICE {
  285.                                multilingualText ISO10646String,
  286.                                standardText     VisibleString
  287.                              }
  288.                    }
  289.  
  290. The BER encoding consists of tag-length-value triples for both composed
  291. types (CHOICE, SEQUENCE, SEQUENCE OF, SET, SET OF, tags, ...) and
  292. primitive types (integers, strings, ...). The tag identifies the type
  293. of the value (e.g. 0 for testPDU and 1 for getFile) and the length
  294. defines the end of the TLV triple. This allows an implementation to
  295. jump efficiently over (perhaps even unknown) values and makes ASN.1
  296. defined protocols very extensible.
  297.  
  298. As an example the encoding of the value {2, 42, 1992-10-6 10:09:34,
  299. "Hey!"} of type NonsenseProtocol:
  300.  
  301.   a0 80 ----------------------- Length encoding: indefinite.
  302.    +--------------------------- Explicit tag: [0] means that we took
  303.                                 the testPDU alternative of the choice.
  304.                                 
  305.   30 80 ----------------------- again indefinite length form, as we don't
  306.    |                            know how long the SEQUENCE will finally be.
  307.    |                            Consequently, the end of the SEQUENCE will
  308.    |                            have to be marked by a 00 00 component.
  309.    +--------------------------- This is a composite type SEQUENCE.
  310.  
  311.   02 01 02 -------------------- The value 2.        
  312.    |  +------------------------ Length of the value: 1 byte.
  313.    +--------------------------- This is an INTEGER value.
  314.  
  315.   02 01 2a -------------------- The value 42.        
  316.    |  +------------------------ Length of the value: 1 byte.
  317.    +--------------------------- This is another INTEGER value.
  318.  
  319.   17 0d 39 32 31 30 30 36 31 30 30 39 33 34 5a
  320.    |  | --------------------------------------
  321.    |  |                 +------ The encoded date and time.
  322.    |  +------------------------ Length: 13 bytes.
  323.    +--------------------------- Type: UTCTime.
  324.  
  325.   1a 04 48 65 79 21
  326.    |  | -----------
  327.    |  |      +----------------- The value: 'Hey!' coded in ASCII.  
  328.    |  +------------------------ This is 4 bytes long.
  329.    +--------------------------- We used the VisibleString alternative
  330.                                 of CHOICE.
  331.  
  332.   00 00 ----------------------- This is the end of the indefinite length
  333.                                 SEQUENCE.
  334.  
  335.   00 00 ----------------------- This is the end of the explicitly tagged
  336.                                 CHOICE alternative TestPDU.
  337.  
  338. Another very important ASN.1 concept and data type are object
  339. identifiers. These are lists of integers that uniquely identify any
  340. object in a protocol, e.g. a X.400 body part, a DFR document type, a
  341. X.500 attribute type, a public key algorithm, a protocol version, etc.
  342. If one object identifier is yours, then only you are allowed to append
  343. further numbers to your OID and create new object identifiers that only
  344. belong to you. You may give some of your newly created object
  345. identifiers to other people, and, then, they also have the right of
  346. creating their own new subtrees in the OID space. The highest levels in
  347. this tree belong to ISO and ITU, and they have already reserved OIDs
  348. for many organizations. This allows you, for instance, to define your
  349. own X.400 high-end cyberspace body part, and it won't collide with
  350. someone else's self-defined body part if a prefix of the OID belongs to
  351. you. As many options in OSI protocols are identified by OIDs, it is
  352. very easy for implementors to extend the protocols without getting in
  353. conflict with older implementations which will know that they don't
  354. know this new OID. Many protocols exchange sets of OIDs that identify
  355. their implemented subsets and extensions after the connection has been
  356. established and automatically determine the biggest common subset of
  357. all optional protocol features that both may use.
  358.  
  359. Today ASN.1/BER are also used in many non-OSI protocols and file
  360. formats, and there are a number of tools (ASN.1 compilers) available
  361. that help to create parsers automatically from ASN.1 specifications.
  362. [See also the section about new standards.]
  363.  
  364. What OSI standards are there?
  365. -----------------------------
  366.  
  367. As two organizations (ISO and ITU) have been involved in the OSI
  368. standardization process, many of the specifications have been
  369. published as both ISO standards and CCITT recommendations (CCITT
  370. recommendations will in the future be called ITU-T recommendations).
  371. In these cases, both versions are "technically aligned" or one version
  372. is a subset of the other one.
  373.  
  374. The OSI Reference Model, as defined in ISO 7498-1 and CCITT
  375. recommendation X.200, describes the details of the seven-layer model.
  376. The three other parts of ISO 7498 describe the Security Architecture,
  377. Naming and Addressing and the Management Framework.
  378.  
  379. Formal protocol description methods are defined in ISO 8807 (LOTOS,
  380. Language Of Temporal Ordering and Specification), ISO 9074 (ESTELLE)
  381. and ISO 9496 (CHILL). ISO 9646 standardizes methods for conformance
  382. testing e.g. the Tree and Tabular Combined Notation (TTCN) for test
  383. suites. ISO TR 10167 (Application guidelines for ESTELLE, LOTOS and SDL)
  384. includes a number of examples of systems, showing how each of them can
  385. be specified using these three standards.
  386.  
  387. International registration procedures for things like OSI document
  388. types, object identifiers, virtual terminal profiles and control
  389. objects and application process titles are described in ISO 9834 and
  390. X.660. Registration means that a world-wide unique identifier will be
  391. reserved for your extension to an OSI protocol, which guarantees that
  392. extensions developed by different people won't collide with each other
  393. and possible future ISO extensions.
  394.  
  395. ISO 8824 and X.208 standardize ASN.1. ISO 8825 and X.209 standardize
  396. the Encoding Rules (BER and soon others) for it. [See also the section
  397. about new standards.]
  398.  
  399. The details of the Security Framework are defined in ISO 10181, and 
  400. ISO 10745 describes the Upper Layers Security Model. Several security
  401. techniques are standardized in ISO 9796 (Digital Signature Scheme
  402. Giving Message Recovery) and ISO 9798 (Entity Authentication
  403. Mechanisms, Symmetric Techniques and Public Key Algorithms). You may
  404. register your own cryptographic algorithms as defined in ISO 9979.
  405.  
  406. Many OSI standards have been divided in two documents, the service
  407. definition and the protocol specification, in order to separate the
  408. description of the functionality from the description of the protocol
  409. realization.
  410.  
  411. Layer seven has been further subdivided into several modules (service
  412. elements), as some of them may be useful for more than one application.
  413. This Application Layer Structure is defined in ISO 9545 and CCITT
  414. X.207. The Association Control Service Element (ACSE) (ISO 8649|X.217
  415. service definition and ISO 8650|X.227 protocol definition) manages the
  416. establishment of a connection between two remote applications. CCR
  417. (Commitment, Concurrency and Recovery) is a service element that
  418. provides services needed for keeping distributed databases consistent
  419. (ISO 9804/9805|X.861/871). ISO 9066 and CCITT X.218/228 define the
  420. Reliable Transfer Service Element (RTSE) that transfers huge messages
  421. safely from one node to the next one with recovery, etc. (e.g. used by
  422. e-mail). The Remote Operations Service Element (ROSE) allows a client
  423. to execute operations at a server process and to receive the results or
  424. error indications.
  425.  
  426. Now, it's time to come to the most interesting part of the whole OSI
  427. story, the application services and protocols:
  428.  
  429. ISO 9595 and CCITT X.710 define the Common Management Information
  430. Service (CMIS) and ISO 9596|X.711 the Common Management Information
  431. Protocol (CMIP) that may be used for controlling all parts of a
  432. computer network, e.g. routers, queues, environmental sensors,
  433. accounts, security logs, installed software versions, clocks, etc. ISO
  434. 10164 describes these various aspects of System Management, and ISO
  435. 10165 standardizes the Management Information Model used for
  436. controlling all these devices.
  437.  
  438. FTAM (File Transfer, Access and Management) is a protocol defined in
  439. ISO 8571 that has been designed for both simple file transfers a la
  440. kermit and DoD ftp and for directly accessing remote file systems like
  441. NFS, etc.
  442.  
  443. The Virtual Terminal (VT) service and protocol specified in ISO 9040
  444. and ISO 9041 allow a host application to control a terminal with screen
  445. and keyboard and similar devices like printers. In addition, not only
  446. application-terminal, but also the less common application-application
  447. and terminal-terminal communication is supported. Today, only the Basic
  448. Class VT, which covers character-oriented terminals has been specified.
  449. This service is comparable to DoD Telnet and the old CCITT
  450. X.3/X.28/X.29 PAD protocol, but much more powerful. It also includes
  451. control of cursor movement, colors, character sets and attributes,
  452. access rights, synchronization, multiple pages, facility negotation,
  453. etc. This means that the huge number of classic terminal type
  454. definitions (e.g. in UNIX termcap or terminfo) are unnecessary at each
  455. host in the net, as the VT protocol includes the corresponding commands
  456. for one abstract virtual terminal that only have to be converted by the
  457. local implementation to the actual terminal control sequences.
  458. Consequently, the use of VT means not every host needs to know every
  459. type of terminal. 
  460.  
  461. As with most ISO standards that require general consensus amongst
  462. participating members, the OSI VT has many optional capabilities, two
  463. modes of operation and an almost infinite number of implementation-
  464. specific options. Profiles may help in reducing the optionality present
  465. (e.g., there exists a Telnet profile for VT).  But it is doubtful that
  466. the OSI VT can completely put an end to the 'm x n' terminal
  467. incompatibility problem that exists in a heterogeneous computer
  468. network.
  469.  
  470. ISO 8831 and ISO 8832 define the Job Transfer and Manipulation (JTM)
  471. protocol and service that may be used to control the disposition of the
  472. programs and files and the execution of processes on remote hosts, to
  473. query their status and to retrieve the results.
  474.  
  475. The X.400 electronic mail system, also known as Message Handling System
  476. (MHS) is specified in CCITT X.400-X.440 and in ISO 10021. The system
  477. consists of Message Transfer Agents (MTAs), that store and forward
  478. messages through the network and User Agents (UAs) that present the
  479. mail to the end user and allow him/her to send mail. The X.400 P1
  480. protocol which is used between MTAs is based on the RTSE. The MTAs
  481. transfer the messages to and from the UAs using the P3 protocol or by
  482. local means (e.g. the file system if both processes run on the same
  483. host). The Message Transfer System (MTS) that is formed by all MTAs may
  484. be used for Interpersonal Messaging (IPM) or for other purposes (e.g.
  485. system management). The MTS is used for sending mail to other people
  486. directly or via Distribution Lists (DLs) and to transport delivery
  487. reports (after the message has been delivered or discarded) and
  488. receipt/non-receipt notifications (after the message has been read by
  489. the recipient or deleted without ever having been seen by the
  490. recipient) back to the sender. MTAs may be capable of converting
  491. message body part types (e.g. different character sets or voice data
  492. encodings) and rerouting if default links are unavailable.
  493.  
  494. X.500-X.521 and ISO 9594 specify the OSI Directory Service (DS). The DS
  495. is a distributed database used for storing information about people,
  496. organizations, application processes (e.g. MTAs or public DFR servers),
  497. routing tables, etc.  X.500 may be used to search the X.400 addresses
  498. of people interactively as well as other attributes like their phone
  499. number, postal address, preferred delivery method (fax, mail, etc.),
  500. photo and public keys. X.509 specifies a distributed authentication
  501. framework based on the DS. The X.500 directory information base is
  502. structured hierarchically, i.e. the entries that represent real world
  503. objects (countries, persons, servers, management information, news
  504. groups, distribution lists, groups of persons, organizational roles,
  505. etc.) are connected to a world wide tree. Each entry has a number of
  506. standardized or locally defined attributes and a unique Distinguished
  507. Name that describes its location in the tree. Generally, there are
  508. nodes for countries under the root and nodes for organizations under
  509. each country and these may be further subdivided and contain person
  510. entries, etc. But also other tree stuctures are possible. Powerful
  511. search queries allow the implementation of easy-to-use Directory User
  512. Agents (DUAs, the clients) that provide users the ability to find
  513. information stored in the interconnected Directory System Agents (DSAs,
  514. the servers). The DSAs talk to each other using the Directory System
  515. Protocol (DSP). DUAs send their queries and modification commands to
  516. the DSAs using the Directory Access Protocol (DAP).
  517.  
  518. The Document Filing and Retrieval (DFR) service and protocol are
  519. defined in ISO 10166. A document store may contain a large number of
  520. documents (ASCII texts, word processing files, hypertext files,
  521. software packages, etc.) together with attributes like title, name of
  522. the author, date of creation and latest modification, version number,
  523. pointers to other copies of the same document, pointers to older
  524. versions, language, summary, keyword list, access rights, lock
  525. semaphores and so on. Documents may be arranged in a tree and described
  526. with attributes very similar to the X.500 database. DFR allows the
  527. implementation of an easy to use distributed information retrieval
  528. system similar to the Internet gopher. In addition to the gopher
  529. protocol, the DFR protocol provides the ability to store and modify
  530. documents, access control, searches on attributes, a version control
  531. mechanism and other things. Documents may also be represented by links
  532. to other DFR servers and a unique identifier is assigned to each
  533. document by the system, so that the user need not be aware that he/she
  534. accesses several servers while browsing through the document (and
  535. perhaps hypertext) space. Documents may be of various types (e.g. ODA,
  536. SGML and HyTime, X.400 IPM messages, binary).
  537.  
  538. The Bibliographic Search, Retrieval and Update Service and Protocol
  539. (SR) are defined in ISO 10162/10163. It is based on NISO Z39.50.
  540.  
  541. An Interlibrary Loan Service and Protocol are specified in ISO
  542. 10160/10161 for library applications.
  543.  
  544. ISO 10031 defines Distributed Office Applications (DOA).
  545.  
  546. The Manufacturing Message Specification (MMS) Service and Protocol have
  547. been defined for controlling and integrating industrial automation
  548. systems (ISO 9506).
  549.  
  550. An application layer protocol for Remote Database Access (RDA) is
  551. specified in ISO 9579 and a Distributed Transaction Processing Model,
  552. Service and Protocol is defined in ISO 10026 and X.850/860/870.
  553.  
  554. This was a very short overview on the application layer. Now let's dive
  555. into the deeper layers.
  556.  
  557. The OSI presentation layer service and protocol are defined in ISO
  558. 8822/8823 and X.216/226. A connectionless mode protocol version is
  559. specified in ISO 9576.
  560.  
  561. The OSI session layer service and protocol are defined in ISO 8326/8327
  562. and CCITT X.215/225. The connectionless variant is specified in ISO
  563. 9548.
  564.  
  565. The OSI transport layer service and protocol are defined in ISO
  566. 8072/8073 and X.214/224. These standards define 5 different flavors of
  567. one transport protocol for the connection-oriented transport service.
  568. TP0 is the simplest version, and assumes that the network service is
  569. reliable enough for the application. TP1 provides error recovery, i.e.,
  570. after a network failure, the transport layer implementation is capable
  571. of automatically reestablishing the connection without notifying the
  572. higher layers. TP1 won't detect errors that are not signaled by the
  573. network layer, e.g., by a disconnect message. TP2 provides the ability
  574. to multiplex several transport connections over a single network
  575. connection and TP3 provides both error recovery and multiplexing
  576. (TP1+TP2=TP3). Finally, TP4 provides all this, plus error detection,
  577. error correction and packet resequencing. TP4 is intended to be used
  578. over unreliable connectionless networks. ISO 8602 defines a protocol
  579. for the connectionless transport service (CLTS) and ISO 11570 a
  580. transport protocol identification mechanism.
  581.  
  582. The network service, and the secrets of OSI network service access
  583. point (NSAP) addresses, are defined in ISO 8348 and X.213. ISO 8648
  584. defines the internal organization of the network layer in 3 sublayers
  585. and ISO 8880 describes protocol combinations for the network service.
  586. ISO 10028 specifies the relaying function of an intermediate system.
  587.  
  588. The connectionless network service may be provided by the
  589. connectionless network protocol (CLNP, also known as ISO IP) defined in
  590. ISO 8473. In combination with CLNP, the End System to Intermediate
  591. System Routeing Information Exchange Protocol (ESIS) defined in ISO
  592. 9542, the Intermediate System to Intermediate System Routeing
  593. Information Exchange Protocol (ISIS) defined in ISO 10589 and the
  594. Protocol for Exchange of Inter-Domain Routeing Information (ISO 10747)
  595. may be used. CLNP is normally used together with TP4 as the transport
  596. protocol.
  597.  
  598. The connection-oriented network service (CONS) may be provided by
  599. X.25 (ISO 8202) as defined in ISO 8878|X.223. ISO 8881 extends X.25 for
  600. use in local area networks, ISO 10732 describes some details of using
  601. X.25 for providing the CONS over the telephone network and ISO 10588
  602. describes how to use X.25 over X.21/X.21bis lines for providing the
  603. CONS. ISO 10177 defines an intermediate system using X.25/CONS and ISO
  604. 10030 is the ESIS version for X.25/CONS. Using ISDN (the new digital
  605. telephone network) for providing the CONS is specified in ISO 9574.
  606.  
  607. And another layer: the Data Link Service is defined in ISO 8886|X.212.
  608. Most data link layer protocols are based on the High-level Data Link
  609. Control (HDLC) family of error correction protocols. These are
  610. described in the standards ISO 3309/4335/7478/7809/8471/8885. One
  611. popular HDLC protocol is the subset LAPB defined in ISO 7776, which is
  612. often used with X.25 on point-to-point lines. ISO 8802 (also known as
  613. IEEE 802) defines several LAN systems, e.g. ISO 8802-3 is the well
  614. known Ethernet (CSMA/CD) specification. ISO 8802-2 defines the data
  615. link layer protocol for LANs Logical Link Control (LLC). LLC1 is the
  616. connectionless and LLC2 the connection-oriented version. The Fiber
  617. Distributed Data Interface (FDDI) is a fiber optic LAN system for 100
  618. Mbit/s specified in ISO 9314.
  619.  
  620. The Physical Layer Service Definition is defined in ISO 10022|X.211.
  621. The physical layers of LANs are, in most cases, defined in the same
  622. documents as the layer 2 descriptions. There are also many ISO and IEC
  623. standards for all kinds of plugs and connectors.
  624.  
  625. OSI standards define a lot of options, and they may be combined in a
  626. huge variety of ways in order to be suitable for all kinds of
  627. requirements (and sometimes for political reasons :-( ). Consequently,
  628. if you have two boxes that claim to be OSI conforming, this doesn't
  629. mean that you can plug them together and they will work together,
  630. because they can use different lower layer protocols and different
  631. higher layer options. In order to create standards that allow that
  632. conforming and compatible products will interoperate, profiles have
  633. been defined. A profile is a set of options and combinations selected
  634. from the protocol standards such that it is guaranteed that
  635. implementations conforming to the (same!) profile will be able to
  636. communicate. Technical report ISO TR 10000 gives the ISO profile
  637. framework. 'A' profiles have been defined for application layer
  638. protocols (e.g. AFT11 in the international standardized profile ISO ISP
  639. 10607 for a simple FTAM file transfer subset and AOM12 in ISO ISP 11183
  640. is an enhanced management protocol subset), 'T' profiles define layer
  641. 1-4 stacks (ISO ISP 10609) and 'F' profiles are for file formats (e.g.
  642. FOD36 is a de luxe version of ODA).
  643.  
  644. A good list of all OSI related standards and their current status is
  645. printed twice a year in the ACM SIGCOMM journal Computer Communication
  646. Review. A list of CCITT standards is available from the Teledoc mail
  647. server described in the standards FAQ where you'll also find a short
  648. list of other ISO standards relevant to computing. For more
  649. information, order the orange ISO Catalogue from your national ISO
  650. member body.
  651.  
  652.  
  653. How are OSI and TCP/IP related?
  654. -------------------------------
  655.  
  656. TCP/IP is a suite of protocols that has been developed by the US
  657. Department of Defense and that are used on the Internet. Software
  658. supporting TCP/IP is part of nearly every UNIX distribution today.
  659. TCP/IP is not a OSI protocol and does not fit in the OSI reference
  660. model. However, the service provided by IP is very similar to the
  661. connectionless network service provided by CLNP, and so, IP is
  662. generally called a layer 3 protocol. Similarly, TCP may be compared
  663. with TP4 and can be seen as a layer 4 protocol in the reference model.
  664. The major differences are the address space, which is a 4-byte sequence
  665. in IP and up to 20 bytes in OSI, and the fact that TCP is a
  666. stream-oriented protocol that doesn't provide any protocol data unit
  667. boundaries. Other details are a few missing features in TCP/IP like
  668. quality of service negotiation and routing restrictions.
  669.  
  670. The Internet standard RFC 1006 defines a method of providing the
  671. connection-oriented transport service (COTS) for OSI over TCP. This is
  672. done using a packet length indicator and the TP0 protocol. RFC 1006 is
  673. only an interim solution, and there are long term plans to introduce
  674. CLNP in the Internet. OSI Services that are used today on the Internet
  675. (e.g. the X.400 and X.500 pilots) use RFC 1006 over TCP/IP.
  676.  
  677. The higher layer protocols in the DoD/Internet suite may be mapped as
  678. follows:
  679.  
  680.        DoD/Internet                   OSI
  681.      ----------------------------------------------------------------
  682.        ftp                            FTAM
  683.        RFC822, SMTP, MIME             X.400
  684.        Telnet, rlogin                 VT
  685.        Gopher+, WWW                   DFR
  686.        WAIS                           SR    (both are based on Z39.50)
  687.        SNMP                           CMIP
  688.        USENET, NNTP                   X.gc
  689.        X Window System                (will be included in OSI)
  690.        NTP (network time protocol)    (under consideration by CCITT)
  691.        OSPF, ISIS                     ISIS
  692.  
  693. Internet Protocols with no OSI equivalent today:
  694.  
  695.        Relay Chat, IRC                OSI has only a standard name for this
  696.                                       so far: synchronous group communication
  697.        Talk                           might perhaps be defined as a VT profile
  698.  
  699. OSI protocols with no TCP/IP equivalent:
  700.  
  701.        X.500                          perhaps finger :-)
  702.        JTM
  703.        parts of DFR
  704.        parts of X.gc
  705.        RDA
  706.        MMS
  707.        Interlibrary Loan Protocol
  708.  
  709.  
  710. Which is better: TCP/IP or OSI?
  711. -------------------------------
  712.  
  713. This question periodically results in flame wars in comp.protocols.iso.
  714. If you missed the last one, here is one opinion:
  715.  
  716.   Neither.  In theory, OSI has the more advanced feature set,
  717.   including significantly more sophisticated application protocols
  718.   including some for services not available at all in the TCP/IP suite.
  719.   In practice, TCP/IP is much more widely implemented and deployed, so
  720.   you are much more likely to find TCP/IP products to suit your needs,
  721.   and typically at much lower prices than equivalent OSI products.
  722.  
  723.                                                   don provan
  724.                                                   donp@novell.com
  725.  
  726. [Others are welcome!]
  727.  
  728.  
  729. OSI criticism
  730. -------------
  731.  
  732. The OSI protocols still suffer from not being used outside communities
  733. where their use is enforced by regulations. Many other protocols (e.g.
  734. TCP/IP, SNA and Novell) are much more popular than the official standards
  735. of computer networking and many people think that the following reasons
  736. have contributed to this situation:
  737.  
  738.   - OSI protocols haven't been tested widly before having been
  739.     standardized and are not based on existing practice in large
  740.     scale computer networking (e.g. Arpanet).
  741.  
  742.   - OSI standards are (compared to Internet standards and RFCs) very
  743.     expensive and difficult to obtain.
  744.  
  745.   - The OSI reference model is too complex and has too much layers.
  746.     The session layer should better be a part of the application layer
  747.     and isn't of much use at the current position. Although it is
  748.     possible to implement just a minimal kernel functionality of 
  749.     both the session and presentation layers, even having to
  750.     understand the very difficult documents isn't very motivating.
  751.  
  752.   - Promising new network technologies like ATM networks don't fit in the
  753.     OSI reference model very well and many important techniques like
  754.     LANs, RPC and stateless protocols became popular after the OSI RM
  755.     had been standardized.
  756.  
  757.   - Having two completely incompatible alternative protocols (CLNP and
  758.     X.25) at the network layer (and consequently many different transport
  759.     layers that try to compensate the differences) isn't what helps you
  760.     in building up a fully interconnected easy to use and maintain
  761.     global network. There is broad agreement among knowledgeable
  762.     people that a connectionless network layer is technically superior
  763.     to the X.25/TP0 approach (which in practice provides NO reliable
  764.     end-to-end transport service, because recovery from intermediate
  765.     node failures is impossible).
  766.  
  767. Christian Huitema <huitema@mitsou.inria.fr> explained the various problems
  768. with OSI quite well when he posted suggestions about explaining the
  769. design principles behind OSI to students in network classes:
  770.  
  771. "Once the class is reasonably at ease with the "basics", it is relatively easy
  772. to introduce the OSI model -- as a baroque left over of the 70's. You have to
  773. do it with an historical perspective; a few tips:
  774.  
  775.  * the model was invented before local networks, and also before RPC.
  776.  
  777.  * the layer decomposition dates back from the time when you had the transport
  778.    programmed in a "front end" and a "session control" programmed in a
  779.    "channel manager".
  780.  
  781.  * ASN.1 was *NOT* part of the original model. If you go back to the early
  782.    ideas, there should not have been an "application standard". Rather, the
  783.    presentation would specify some "common document format", common to all
  784.    applications. The session would be used to ensure that a "consistent" copy
  785.    of this common document was kept at both end.
  786.  
  787.  * the session itself cannot be understoud if you don't present T.62 -- or
  788.    rather, 1980's S.62. Why modern applications would have to bear the load of
  789.    compatibility with a still born super-telex service is indeed a matter of
  790.    interesting debate.
  791.  
  792.  * explaining the relation between an application syntax, a presentation
  793.    context, an application context, an application entity, an application
  794.    process and a PSAP address is great fun.
  795.  
  796.  * indeed, the use of session through the presentation by ACSE, RTSE and CCR
  797.    is also amazing.
  798.  
  799. Then you end up the class explaining that all this is not very serious..."
  800.  
  801.  
  802. Which free OSI implementations are available?
  803. ---------------------------------------------
  804.  
  805. ISODE (pronounce it ISO-D-E, but don't call it the ISO Development
  806. Environment) implements ISO layers 4-7 on UNIX systems. Among the
  807. supported lower layer stacks are RFC1006/TCP/IP and various X.25 and
  808. CLNP implementations. With ISODE you get ASN.1 tools and
  809. implementations of X.500 (QUIPU) and FTAM. Version 8.0 is the last
  810. public domain version and an ISODE Consortium has been founded that
  811. will coordinate further development on a commercial basis. A free Patch
  812. No. 1 with bug fixes for ISODE 8.0 has been provided by the ISODE
  813. Consortium which can be ftped from isode.com.
  814.  
  815. The ISODE and QUIPU mailing list archives are available via anonymous
  816. ftp and gopher from info.educom.edu. The isode and quipu are in
  817. /pub/isode and /pub/quipu respectively.
  818.  
  819. PP is a X.400 message transfer agent and a gateway to other e-mail
  820. systems based on ISODE. The current public domain version is 6.0 and
  821. further commercial development will be done by the ISODE Consortium.
  822.  
  823. Both ISODE and PP are available from many anonymous ftp servers, e.g.
  824. from cs.ucl.ac.uk in directory src.
  825.  
  826. OSIMIS is UCL's OSI management system. It does not intend to provide a
  827. comprehensive set of OSI management facilities but rather to show how
  828. the rich OSI Management functionality can be exploited and to provide
  829. facilities of a generic OSI management platform. In particular,
  830. extended support through an object-oriented (C++) Application Program
  831. Interface (API) is provided to implementors of management applications
  832. in both agent and manager roles, which hides the details of management
  833. information access through the OSI management service/protocol CMIS/P.
  834. The system has been developed using ISODE 7.0 and GNU C++ and is
  835. available with anonymous ftp from cs.ucl.ac.uk [128.16.5.31] in the
  836. directory osimis.
  837.  
  838. [Posted by Peter Kay <P.Kay@massey.ac.nz>:]
  839.  
  840. The clients of ISODE 8.0 have now been ported to OS/2. (pepsy, pepy,
  841. posy, rosy, isoc, imisc, ftam, dish, de and sd). They are available by
  842. anonymous ftp from cc-vms1.massey.ac.nz (130.123.1.4), in the files
  843. os2isode80.zip (for those who want to rebuild the system) or
  844. os2isode-runtime.zip (for those who only want the executables). I
  845. suggest you copy and read the file os2readme first.
  846.  
  847. The port was based on Essex Systems Inc TCP/2 package. It will NOT work
  848. with any others. To run the programs you will need the TCP/2 package.
  849. To rebuild the system you will also need its Developers Kit and the
  850. Microsoft C v6.0 compiler.
  851.  
  852. [Posted by Graham Wheeler <gram@aim1.aztec.co.za>:]
  853.  
  854. An MS-DOS-based ESTELLE compiler/interpreter should be on simtel, in
  855. the Networks directory, with the name PEW2_1.ZIP. A more recent version
  856. is on ftp.cs.uct.ac.za in pub/misc/gc/ together with Graham Wheeler's
  857. <gram@cs.uct.ac.za> PhD thesis about this tool.
  858.  
  859.  
  860. New and planned OSI standards
  861. -----------------------------
  862.  
  863. A group is working on an 'asynchronous group communication' standard
  864. based on X.400, X.500 and DFR. This will include a news system similar
  865. to but more sophisticated than USENET and facilities for joint editing
  866. of documents and voting/polling. The name of the draft document is
  867. currently X.gc.
  868.  
  869. X.400(1988) has been extended to include voice, Electronic Data
  870. Interchange (EDI) and file transfer in the message body. Also many
  871. bugs in the specification have been fixed.
  872.  
  873. X.500(1993) has been finished and will define a new replication
  874. protocol, extended search methods, access rights, attribute
  875. inheritance, ISO 10646 strings and other things. It will be published
  876. in late 1993.
  877.  
  878. An addendum 1 (filestore management) to FTAM now defines a hierarchical
  879. file system with subdirectories, links, paths, etc. Previously, paths
  880. have been long file names and were OS dependent (e.g. / in Unix, \ in
  881. MS-DOS) and directories have been treated like files (e.g. '.').
  882.  
  883. HDLC has been extended to include an asynchronous mode that defines how
  884. to use the layer 2 framing with start/stop bits and byte stuffing on
  885. the serial ports that are part of every PC. Check ISO 3309 addendum
  886. 1-3.
  887.  
  888. ISO is working on an OSI-based remote procedure call standard (ISO CD
  889. 11578).
  890.  
  891. A new version of ASN.1 is about to be released. The new ASN.1 standard
  892. consists of a 4-part document:
  893.  
  894.         ITU-T Rec. X.680 | ISO/IEC 8824-1
  895.         ITU-T Rec. X.681 | ISO/IEC 8824-2
  896.         ITU-T Rec. X.682 | ISO/IEC 8824-3
  897.         ITU-T Rec. X.683 | ISO/IEC 8824-4
  898.  
  899. The first part is very similar to 1990 ASN.1, except that there is no
  900. more macro notation or ANY DEFINED BY.  Also, there are niceties such
  901. as automatic tagging and support for multi-byte characters in
  902. the new ASN.1. The last 3 parts replace the macro notation and
  903. ANY DEFINED BY. On the encoding rules side there is:
  904.  
  905.         ITU-T Rec. X.690 | ISO/IEC 8825-1
  906.         ITU-T Rec. X.691 | ISO/IEC 8825-2
  907.  
  908. The first contains the good old Basic Encoding Rules (with support for
  909. multi-byte characters, etc.), plus the Canonical Encoding Rules and the
  910. Distinguished Encoding Rules. The second is the Packed Encoding Rules.
  911.  
  912. In the ASN.1 object identifier name space, the object identifier nodes
  913. "itu" and "joint-iso-itu" are now synonyms for "ccitt" and "joint-iso-ccitt",
  914. respectively, and thus can be used interchangeably.
  915.  
  916.  
  917. Books and Journals
  918. ------------------
  919.  
  920. [Posted by Even Splett <e_splett@trofs.enet.dec.com> and others with
  921. comments collected by Khac Binh Su <kbs@ccr-p6.ccr.jussieu.fr> and
  922. others:]
  923.  
  924. Data communications, Computer Networks and OSI
  925. Halsall, Fred
  926. 549 p.
  927. Addison-Wesley
  928. ISBN 0-201-18244-0
  929.  
  930. Networking in Open Systems; international seminar, Oberlech, Austria,
  931. Muller, Gunter. Blanc, Robert P.
  932. Berlin, Springer-Verlag, c1987
  933. Lecture notes in computer science; 248
  934. 441 p.
  935. QA76.L42 v.248 1987
  936. ISBN 3540177078
  937.  
  938. OSI Explained; end-to-end computer communication standards.
  939. Henshall, John,  Shaw, Sandy.
  940. Ellis Horwood Ltd.
  941. distributed by John Wiley & Sons Ltd.
  942. 217 p.
  943. TK5105.5.H47
  944. ISBN 0745802532  Ellis Horwood
  945. ISBN 0470211008  Halsted Press
  946.  
  947.   Very good on transport and above, including a consolidation by 3
  948.   examples that shows how the upper layers work together to establish an
  949.   association, transfer data, and release it. It also has a chapter each
  950.   on FTAM, X.400, and X.500, but does very little with ASN.1, a real
  951.   weakness in an otherwise excellent book.  Its other virtue: it is under
  952.   250 pages.
  953.  
  954. Open Systems; the Basic Guide to OSI and its Implementation.
  955. Judge, Peter J.
  956. QED Information Sciences
  957. Authorized reprint of -- Sutton, Surrey, Computer Weekly. (ISBN 1853840092)
  958. 184 p.
  959. TK5105.5.J83  1989
  960. ISBN 0894353101
  961.  
  962. Open Systems
  963. Karial, Henry S.
  964. JA71.K32 1969
  965.  
  966. OSI: a Model for Computer Communications Standards
  967. Black, Uyless D.
  968. Prentice Hall
  969. TK5105.5.B5656  1991
  970. ISBN 0-13-637133-7
  971.  
  972.   An excellent OSI introduction.
  973.  
  974. The Open Book : A Practical Perspective on OSI
  975. Rose, Marshall T
  976. Tk5105.5.R67  1989
  977. Prentice Hall
  978. ISBN 0-13-643016-3
  979.  
  980.   It is fun reading, and it gives you the general idea about the whole
  981.   stuff. One of its most interesting topics is transition: how to migrate
  982.   to OSI from a TCP/IP oriented world. Excellent, but not cheap. In
  983.   Germany it is 150,-- DM.
  984.  
  985.   I started with Marshall T. Rose's The Open Book - a practical 
  986.   perspective on OSI by Prentice-Hall. It came out in 1991 so it is quite
  987.   up to date, but not cheap (at least in Finland).
  988.  
  989.   It is not an exclusive book on the upper layers of the OSI. 
  990.   Nevertheless, his presentation of the upper layers in a couple of
  991.   chapters is sufficient enough to start.
  992.  
  993.   I am not such a fan of Marshall Rose's "The Open Book" as I once was. 
  994.   At this point, the book is getting a bit dated (the publication date is
  995.   1990 on my edition; a lot has changed in that time), and it emphasizes
  996.   the upper layers to the detriment of the lower layers. I have found the
  997.   book by  Uyless Black superior in several respects: it is newer, it is
  998.   technically denser, and it refrains from excessive editorializing.
  999.  
  1000. Complete guide to ISO protocols Vol 1
  1001. Thomas, Steve
  1002. Springer Verlag
  1003. ISBN 0387970231
  1004.  
  1005. Handbook of computer communications standards, Vol 1
  1006. The Open Systems Interconnection (OSI) model
  1007. Stallings, William   1989
  1008. ISBN 0-672-22664-2 Howard W. Sams & Company
  1009. ISBN 002948071x    Macmillan
  1010.  
  1011.   This book is OK, but lacks the finer details.
  1012.  
  1013. An introduction to Open Systems Interconnection
  1014. MacKinnon, Dennis
  1015. 254 p.
  1016. Computer Science Press  1990
  1017. TK 5105 M3335  1990
  1018. ISBN 0716781808
  1019.  
  1020. Standards for Open Systems Interconnection
  1021. Knowles
  1022. Blackwell Scientific Publications
  1023. ISBN 0632018682
  1024.  
  1025. OSI in Microcomputer LANs
  1026. Strom, Jim.
  1027. 125 p.
  1028. Manchester: NCC Publications, 1989.
  1029. TK 5105.5 S87  1989
  1030. ISBN 0850127114 (pbk)
  1031.  
  1032. ASN.1, The Tutorial and Reference
  1033. Douglas Steedman
  1034. Technology Appraisals, 82 Hampton Road,
  1035. Twickenham, TW2 5QS, U.K.
  1036. (Fax +44 81 744 1149)
  1037. ISBN 1 871802 06 7
  1038.  
  1039. Open Systems Interconnection
  1040. by Gary Dickson and Alan Lloyd
  1041. Prentice Hall Australia  (1992)
  1042. ISBN 0 13 640111 2
  1043.  
  1044. ISODE 8.0 Manual
  1045.  
  1046.   The ISODE  manual is a nice reference material if you are looking for
  1047.   implementation details of the upper layers. In fact, looking at ISODE
  1048.   code is probably the best way to see how the "theoretical" stuff is
  1049.   applied.
  1050.  
  1051. Teleinformatique by Nussbaumer,
  1052. published by Presses polytechniques
  1053. romandes (french version)
  1054.  
  1055.   The vol 3&4 are the best books available in french for the upper
  1056.   layers.
  1057.  
  1058. Computer Networks by Andrew Tannenbaum
  1059.  
  1060.   This book explains accurately the general aspects of problems up-to
  1061.   layer 6. Layer 7's description is a bit vague.
  1062.  
  1063.   A very nice introduction in computer communication that also covers 
  1064.   OSI. Highly recommended for computer science students and others
  1065.   searching a good general networking introduction.
  1066.  
  1067. Communication Network Protocols - OSI Explained
  1068. Brian W. Marsden
  1069. Chartwell-Bratt (UK)
  1070. 1991 (3rd edition)
  1071. ISBN 0-86238-276-9
  1072.  
  1073.   It is extremely idiosyncratic, and should not be read except in
  1074.   conjunction with another book. Also, only some of it is about OSI. It
  1075.   is, however (a) very cheap (15 UK pounds), and (b) the only book I know
  1076.   of which talks about the UK Coloured Book protocols. These had a major
  1077.   impact on some parts of OSI, particularly JTM, as well as being
  1078.   interesting in their own right.
  1079.  
  1080. Networking Standards
  1081. A Guide to OSI, ISDN, LAN, and MAN Standards
  1082. Stallings, William
  1083. Addison-Wesley 1993
  1084. 627 pages
  1085. ISBN 0-201-56357-6
  1086.  
  1087.   Provides an overview of basic OSI standards, then a detailed 
  1088.   technical discussion of leading-edge OSI-related standards, including 
  1089.   internetworking and routing, ISDN and BISDN, LAN and MAN,  network
  1090.   management, security, and international standardized  profiles.
  1091.  
  1092. [End of comp.protocols.iso FAQ]
  1093.  
  1094. -- 
  1095. Markus Kuhn, Computer Science student -- University of Erlangen,
  1096. Internet Mail: <mskuhn@cip.informatik.uni-erlangen.de> - Germany
  1097. WWW Home: <http://wwwcip.informatik.uni-erlangen.de/user/mskuhn>
  1098.  
  1099.